Key Provisioning is a problem common to many cryptographic modules. Whenever a cryptographic device is designed to perform operations using internally-stored key material, this key material needs to be available to the cryptographic device.
For most key material, provisioning may be performed by means defined at the application level. Most applications may support methods to securely communicate keys to the participants of their security protocols. Provisioning methods specified by applications may usually rely on pre-existing key material, which may be used to secure a subsequent provisioning process. Other applications may perform provisioning without pre-existing key material, for example, if their threat models allow that.